package com.clearance.mine_clearance.untils;

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class NumberUntils {

    static List<String> listNumber = new ArrayList<>();

    static{
        listNumber.add("0");
        listNumber.add("1");
        listNumber.add("2");
        listNumber.add("3");
        listNumber.add("4");
        listNumber.add("5");
        listNumber.add("6");
        listNumber.add("7");
        listNumber.add("8");
        listNumber.add("9");
    }
    public static boolean isDigit(String str) {
        //  正则表达式匹配数字
        Pattern pattern = Pattern.compile("\\d+");
        //  使用  Matcher  类匹配字符串
        Matcher matcher = pattern.matcher(str);
        //  如果匹配成功，返回  true，否则返回  false
        return matcher.matches();
    }

    public static void main(String[] args) {
        System.out.println(getStringType("23"));
    }


    public static boolean isLeiNumber(String input){
        if(listNumber.contains(input)){
            return Boolean.TRUE;
        }else {
            return Boolean.FALSE;
        }
    }

    public static boolean getStringType(String input) {
        //  正则表达式匹配数字和小数
        String regex = "-?[0-9]+(\\.[0-9]+)?";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(input);

        if (matcher.matches()) {
            //  如果匹配到数字和小数，则返回  "数字或小数"
            return Boolean.TRUE;
        } else {
            //  如果没有匹配到数字和小数，则检查是否为字母类型
            char firstChar = input.charAt(0);
            if (Character.isLetter(firstChar)) {
                //  如果第一个字符是字母，则返回  "字母"
                return Boolean.FALSE;
            } else {
                //  如果第一个字符不是字母，则返回  "其他"
                return Boolean.FALSE;
            }
        }
    }


}
